home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / perl5000.zip / perl5000 / Todo < prev    next >
Text File  |  1994-10-11  |  2KB  |  76 lines

  1. Modules needed
  2.     X/Motif/Tk etc.
  3.     Curses
  4.  
  5. Tie Modules
  6.     VecArray        Implement array using vec()
  7.     SubstrArray        Implement array using substr()
  8.     VirtualArray        Implement array using a file
  9.     ShiftSplice        Defines shift et al in terms of splice method
  10.  
  11. Would be nice to have
  12.     Profiler
  13.     pack "(stuff)*"
  14.     Contiguous bitfields in pack/unpack
  15.     lexperl
  16.     Bundled perl preprocessor
  17.     Use posix calls internally where possible
  18.     const variables
  19.     gettimeofday
  20.     bytecompiler
  21.     format BOTTOM
  22.     $obj->can("method") to probe method inheritance
  23.     -iprefix.
  24.     -i rename file only when successfully changed
  25.     All ARGV input should act like <>
  26.     Multiple levels of warning
  27.     .= shouldn't complain about undefined under -w
  28.     report HANDLE [formats].
  29.     tie(FILEHANDLE, ...)
  30.     __DATA__
  31.     support in perlmain to rerun debugger
  32.     make 'r' print return value like gdb 'fini'
  33.  
  34. Possible pragmas
  35.     debugger
  36.     optimize (use less memory, CPU)
  37.  
  38. Optimizations
  39.     constant function cache
  40.     switch structures
  41.     foreach(@array)
  42.     foreach (1..1000000)
  43.     foreach(reverse...)
  44.     Set KEEP on constant split
  45.     Cache eval tree (unless lexical outer scope used (mark in &compiling?))
  46.     rcatmaybe
  47.     Shrink opcode tables via multiple implementations selected in peep
  48.     Cache hash value?  (Not a win, according to Guido)
  49.     Optimize away @_ where possible
  50.     sfio?
  51.     "one pass" global destruction
  52.     Optimize sort by { $a <=> $b }
  53.     Rewrite regexp parser for better integrated optimization
  54.  
  55. Vague possibilities
  56.     ref function in list context
  57.     Populate %SIG at startup if appropriate
  58.     sub mysplice(@, $, $, ...)
  59.     data prettyprint function?  (or is it, as I suspect, a lib routine?)
  60.     Nested destructors
  61.     make tr/// return histogram in list context?
  62.     undef wantarray in void context
  63.     Loop control on do{} et al
  64.     Explicit switch statements
  65.     perl to C translator
  66.     multi-thread scheduling
  67.     built-in globbing
  68.     compile to real threaded code
  69.     structured types
  70.     paren counting in tokener to queue remote expectations
  71.     autocroak?
  72.     Modifiable $1 et al
  73.     substr EXPR,OFFSET,LENGTH,STRING
  74.     locally capture warnings into an array
  75.  
  76.